vifm(1)                              Vifm                              vifm(1)



NAME
       vifm - vi file manager

SYNOPSIS
       vifm [OPTION]...
       vifm [OPTION]... LWIN_DIR
       vifm [OPTION]... LWIN_DIR RWIN_DIR

DESCRIPTION
       Vifm  is  a ncurses based file manager with vi like keybindings. If you
       use vi, vifm gives you complete keyboard control over your files  with‐
       out having to learn a new set of commands.

OPTIONS
       The  vifm executable will start vifm in the current directory unless it
       is given a different directory on the command line.

       <lwinpath>
              Starts Vifm in the specified path.

       <lwinpath> <rwinpath>
              Starts Vifm in the specified paths.

       Paths to files are also allowed in case you want  vifm  to  start  with
       some archive opened.  If you want to select file, prepend its path with
       --select.

       -f     only used from the vifm.vim  script.   The  selected  files  are
              written to $VIFM/vimfiles and vifm exits.

       --logging
              Log  some  errors  to $VIFM/log.  Also /var/log/vifm-startup-log
              (on *nix) and startup-log in the  directory  of  executable  (on
              Windows)  is  used  to  log  startup process (when configuration
              directory isn't determined).

       --remote
              Sends the rest of command line to the active vifm server (one of
              already  running  instances  if  any).  When there is no server,
              quits silently.  There is no limit on how many arguments can  be
              processed.  One can combine --remote with -c <command> or +<com‐
              mand> to execute command in already running  instance  of  vifm.
              See also "Client-Server" section below.

       -c <command> or +<command>
              Run  command-line  mode  <command> on startup.  Commands in such
              arguments are executed in the order they appear in command line.
              Commands with spaces or special symbols must be enclosed in dou‐
              ble or single quotes or all special symbols  should  be  escaped
              (the exact syntax strongly depends on shell).

       --help, -h
              Show an overview of the commandline options.

       --version, -v
              Show version information and quit.

       --no-configs
              Don't read vifmrc and vifminfo.


       See Startup section below for the explanations on $VIFM.

General keys
       Ctrl-C or Escape
              cancel most operations.

       Ctrl-C or Escape
              clear all selected files.

       Ctrl-L clear and redraw the screen.

Basic Movement
       The  basic vi key bindings are used to move through the files and popup
       windows.

       k, gk, or Ctrl-P
              moves cursor up one line.

       j, gj or Ctrl-N
              moves cursor down one line.

       h      when 'lsview' is off moves up  one  directory,  otherwise  moves
              left one file.

       l      when  'lsview' is off moves into a directory or launches a file,
              otherwise moves left one file.

       gg     move to the top of the file list.

       gh     moves up one directory.

       gl or Enter
              moves into a directory or launches a file.

       G      move to the bottom of the file list.

       H      move to the first file in the window.

       M      move to the file in the middle of the window.

       L      move to the last file in the window.

       Ctrl-F or Page Down
              move forward one page.

       Ctrl-B or Page Up
              move back one page.

       Ctrl-D jump back one half page.

       Ctrl-U jump forward one half page.

       n%     move to the file that is n percent from the top of the list (for
              example 25%).

       0 or ^ move  cursor  to the first column.  See 'lsview' option descrip‐
              tion.

       $      move cursor to the last column.  See  'lsview'  option  descrip‐
              tion.

       Space Bar
              toggles between the two file lists.

Movement with Count
       Most  movement  commands  also  accept  a count, 12j would move down 12
       files.

       [count]%
              move to percent of the file list.

       [count]j
              move down count files.

       [count]k
              move up count files.

       [count]G or [count]gg
              move to list position count.

Scrolling panes
       zt     redraw pane with file in top of list.

       zz     redraw pane with file in center of list.

       zb     redraw pane with file in bottom of list.

       Ctrl-E scroll pane one line down.

       Ctrl-Y scroll pane one line up.

Pane manipulation
       Second character can be entered with or without Control key.

       Ctrl-W H
              move the pane to the far left.

       Ctrl-W J
              move the pane to the very bottom.

       Ctrl-W K
              move the pane to the very top.

       Ctrl-W L
              move the pane to the far right.

       Ctrl-W b
              switch to bottom-right window.

       Ctrl-W h
              switch to the left pane.

       Ctrl-W j
              switch to the pane below.

       Ctrl-W k
              switch to the pane above.

       Ctrl-W l
              switch to the right pane.

       Ctrl-W o
              shortcut for :only

       Ctrl-W p
              switch to previous window.

       Ctrl-W s
              shortcut for :split

       Ctrl-W t
              switch to top-left window.

       Ctrl-W v
              shortcut for :vsplit

       Ctrl-W w
              switch to other pane.

       Ctrl-W x
              exchange panes.

       [count1]Ctrl-W[count2]+
              increase size of the view by count1*count2.

       [count1]Ctrl-W[count2]-
              decrease size of the view by count1*count2..

       [count1]Ctrl-W[count2]<
              increase size of the view by count1*count2..

       [count1]Ctrl-W[count2]>
              decrease size of the view by count1*count2..

       Ctrl-W |
              maximize current view.

       Ctrl-W _
              maximize current view.

       Ctrl-W =
              make size of two views equal.

Marks
       Marks are set the same way as they are in vi.

       You can use this characters for marks [a-z][A-Z][0-9].

       m[a-z][A-Z][0-9]
              to set a mark for the current file.

       '[a-z][A-Z][0-9]
              moves to the file set for the mark.

Searching
       /regular expression pattern[Return]
              will highlight all files matching the pattern and go to the next
              match.

       ?regular expression pattern[Return]
              will highlight all files matching the pattern and go to the pre‐
              vious match.

       [count]n
              find the next match of / or ?.

       [count]N
              find the previous match of / or ?.

       [count]f[character]
              search forward for file with [character] as first  character  in
              name.  Search wraps around the end of the list.

       [count]F[character]
              search  backward for file with [character] as first character in
              name.  Search wraps around the end of the list.

       [count];
              find the next match of f or F.

       [count],
              find the previous match of f or F.

       Note: f, F, ; and , wrap around list beginning and end  when  they  are
       used alone and they don't wrap when they are used as selectors.

File Filters
       The basic vim folding key bindings are used for filtering files.

       All directorys will show the ../ file no matter what the filter setting
       is with the exception of the / directory.

       Each file list has its own filter.

       Filtered files are not checked in / search or :commands.

       zo     Show all of the dot files.

       zf     Filter all of the selected files.

       za     Toggle the showing and hiding of dot files.

       zm     Filter all of the dot files.

       zO     Show the filtered files.

       zM     Filter the files matching the filename filter.

       zR     Remove all filters.

Other Normal Mode Keys
       [count]:
              enter command line mode.  Count will add range.

       [count]!! and [count]!<selector>
              enter command line mode with entered ! command.  Count will mod‐
              ify range.

       Ctrl-O go backward through history.

       Ctrl-I if  'cpoptions' contains "t" flag, <tab> and <c-i> switch active
              pane just like <space> does, otherwise it goes  forward  through
              directory history of the current view.

       Ctrl-G creates  a window showing detailed information about the current
              file.

       Shift-Tab
              enters view mode (works only after  activating  view  pane  with
              :view command).

       ga     calculate directory size.

       gA     like ga, but force update.

       gf     find  link  destination (like l with 'followlinks' off, but also
              finds directories).

       gr     only for MS-Windows
              same as l key, but tries  to  run  program  with  administrative
              privileges.

       gv     go to visual mode restoring last selection.

       gs     restore last t selection, like gv for visual mode selection.

       gu<selector>
              make names of selected files lowercase.

       guu    gugu make name of current file lowercase.

       gU<selector>
              make names of selected files uppercase.

       gUU    gUgU make name of current file uppercase.

       e      explore file in the current pane.

       i      opens file with associated program even if it's an executable.

       cw     rename a file or files.

       cW     change only name of file (without extension).

       cl     change link target.

       co     only for *nix
              change file owner.

       cg     only for *nix
              change file group.

       cp     change  file  attributes  (permission  on *nix and properties on
              Windows).

       [count]C
              clone file [count] times.

       [count]dd or d[count]selector
              moves the selected files to trash directory (if  'trash'  option
              is set, otherwise delete).  See "Trash directory" section below.

       [count]DD or D[count]selector
              removes the selected files.

       Y, [count]yy or y[count]selector
              yanks the selected files.

       Y      same as yy.

       p      will  copy the yanked files to the current directory or move the
              files to the current directory if they were deleted with  dd  or
              :d[elete] or if the files were yanked from trash directory.  See
              "Trash directory" section below.

       P      moves the last yanked files.  The advantage of using  P  instead
              of  d followed by p is that P moves files only once.  This isn't
              important in case you're moving files in the  same  file  system
              where  your home directory is, but using P to move files on some
              other file system (or file systems, in case  you  want  to  move
              files  from  fs1  to  fs2 and your home is on fs3) can save your
              time.

       al     puts symbolic links with absolute paths.

       rl     puts symbolic links with relative paths.

       t      select or unselect (tag) the current file.

       u      undo last change.

       Ctrl-R redo last change.

       v      enter visual mode.

       V      enter visual mode.

       [count]Ctrl-A
              increment first number in file name by count (1 by default).

       [count]Ctrl-X
              decrement first number in file name by count (1 by default).

       ZQ     same as :quit!

       ZZ     same as :quit

       .      repeat last command line command (not normal  mode  command)  of
              this  session (does nothing right after startup or :restart com‐
              mand).  The command doesn't depend on command-line  history  and
              can be used with completely disabled history.

       (      goto previous group.  Groups are defined by primary sorting key.
              For name and iname members of each group have same first letter,
              for all other sorting keys vifm uses size, uid, ...

       )      goto next group.  See ( key description above.

Using Count
       You can use count with commands like yy.

       [count]yy
              yank count files starting from current cursor position downward.

       Or you can use count with motions passed to y, d or D.

       d[count]j
              delete  (count  + 1) files starting from current cursor position
              upward.

Registers
       vifm supports multiple registers for temporary storing list  of  yanked
       or deleted files.

       Registers should be specified with hitting double quite key followed by
       a register name.  Count is specified after register name.   By  default
       commands use unnamed register, which has double quote as its name.

       Though  all  commands  accept  registers, most of commands ignores them
       (for example H or Ctrl-U).  Other commands can fill register or  append
       new files to it.

       Presently vifm supports ", _, a-z and A-Z characters as register names.

       As mentioned above " is unnamed register and has special meaning of the
       default register.  Every time when you use named registers (a-z and  A-
       Z)  unnamed  register  is  updated to contain same list of files as the
       last used register.

       _ is black hole register.  It can be used for writing, but its list  is
       always empty.

       Registers with names from a to z  and from A to Z are named ones.  Low‐
       ercase registers are cleared before adding new files,  while  uppercase
       aren't and should be used to append new files to the existing file list
       of appropriate lowercase register (A for a, B for b, ...).

       Registers can be changed on :empty command if they contain files  under
       trash directory (see "Trash directory" section below).

       Registers do not contain one file more than once.

       Example:

         "a2yy

       will  put  names  of two files to register a (and to the unnamed regis‐
       ter),

         "Ad

       will remove one file and append its name to  register  a  (and  to  the
       unnamed register),

         p or "ap or "Ap

       will insert previously yanked and deleted files into current directory.

Selectors
       y,  d, D, !, gu and gU commands accept selectors.  You can combine them
       with any of selectors below to quickly remove or yank several files.

       Most of selectors are like vi motions: j, k, gg, G, H, L, M, %,  f,  F,
       ;, comma, ', ^, 0 and $.  But there are some additional ones.

       a      all files in current view.

       s      selected files.

       S      all files except selected.

       Examples:
        dj - delete file under cursor and one below.
        d2j - delete file under cursor and two below.
        y6gg - yank all files from cursor position to 6th file in the list.

       When you pass a count to whole command and its selector they are multi‐
       plied. So:
        2d2j - delete file under cursor and four below.
        2dj - delete file under cursor and two below.
        2y6gg - yank all files from cursor position to 12th file in the list.

Visual Mode
       In visual mode work almost all normal mode keys, but they do not accept
       selectors.

       Enter  save selection and go back to normal mode.

       gv     restore previous visual selection.

       v      leave visual mode.

       V      leave visual mode.

       :      enter  command  line  mode.  When you leave it selection will be
              cleared.

       o      switch active selection bound.

       O      switch active selection bound.

       gu, u  make names of selected files lowercase.

       gU, U  make names of selected files uppercase.

View Mode
       This mode tries to imitate the less program.  Currently  the  following
       keys are supported:

       Shift-Tab, Tab, q, Q, ZZ
              go back to normal mode.

       [count]e, [count]Ctrl-E, [count]j, [count]Ctrl-N, [count]Enter
              forward one line (or [count] lines).

       [count]y, [count]Ctrl-Y, [count]k, [count]Ctrl-K, [count]Ctrl-P
              backward one line (or [count] lines).

       [count]f, [count]Ctrl-F, [count]Ctrl-V, [count]Space Bar
              forward one window (or [count] lines).

       [count]b, [count]Ctrl-B, [count]Alt-V
              backward one window (or [count] lines).

       [count]z
              forward one window (and set window to [count]).

       [count]w
              backward one window (and set window to [count]).

       [count]Alt-Space
              forward one window, but don't stop at end-of-file.

       [count]d, [count]Ctrl-D
              forward one half-window (and set half-window to [count]).

       [count]u, [count]Ctrl-U
              backward one half-window (and set half-window to [count]).

       r, Ctrl-R, Ctrl-L, R
              repaint screen.

       [count]/pattern
              search forward for ([count]‐th) matching line.

       [count]?pattern
              search backward for ([count]‐th) matching line.

       [count]n
              repeat previous search (for [count]‐th occurrence).

       [count]N
              repeat previous search in reverse direction.

       [count]g, [count]<, [count]Alt-<
              go to first line in file (or line [count]).

       [count]G, [count]>, [count]Alt->
              go to last line in file (or line [count]).

       [count]p, [count]%
              go to beginning of file (or N percent into file).

       v      edit the current file with vim.

       Ctrl-W S
              split window horizontally.

       Ctrl-W V
              split window vertically.

       Ctrl-W +
              increase size of the view.

       Ctrl-W -
              decrease size of the view.

       Ctrl-W <
              increase size of the view.

       Ctrl-W >
              decrease size of the view.

       Ctrl-W |
              maximize current view.

       Ctrl-W _
              maximize current view.

       Ctrl-W =
              make size of two views equal.

Command line Mode
       This  keys  apply  to  all  submodes of the command line mode: command,
       prompt and search.

       Down, Up, Left, Right, Home, End and Delete are extended keys and  they
       are  not  available  if  vifm  is compiled with --disable-extended-keys
       option.

       Esc, Ctrl-C
              leave command line mode, cancels input.

       Ctrl-M, Enter
              execute command and leave command line mode.

       Ctrl-I, Tab
              complete command or its argument.

       Shift-Tab
              complete in reverse order.

       Ctrl-_ stop completion and return original input.

       Ctrl-K remove characters from cursor position till the end of line.

       Ctrl-U remove characters from cursor position  till  the  beginning  of
              line.

       Ctrl-H, Backspace
              remove character before the cursor.

       Ctrl-D, Delete
              remove character under the cursor.

       Ctrl-B, Left
              move cursor to the left.

       Ctrl-F, Right
              move cursor to the right.

       Ctrl-A, Home
              go to line beginning.

       Ctrl-E, End
              go to line end

       Alt-B  go to the beginning of previous word.

       Alt-F  go to the end of next word.

       Ctrl-W remove  characters  from  cursor  position till the beginning of
              previous word.

       Alt-D  remove characters from cursor position  till  the  beginning  of
              next word.

       Ctrl-T swap the order of current and previous character and move cursor
              forward or, if cursor past the end of line, swap  the  order  of
              two last characters in the line.

       Alt-.  insert last part of previous command to current cursor position.
              Each next call will insert last part of older command.

       Ctrl-N recall more recent command-line from history.

       Ctrl-P recall older command-line from history.

       Up     recall more recent command-line from history, that begins as the
              current command-line.

       Down   recall  older command-line from history, that begins as the cur‐
              rent command-line.

Commands
       Commands are executed with :command_name<Return>

       ´|' can be used to separate commands, so you can give multiple commands
       in  one  line.   If you want to use '|' in an argument, precede it with
       '\'.

       Commented out lines should start with the double  quote  symbol,  which
       may be preceded by whitespace characters.

       :[count]

       :number
              move to the file number.
              :12 would move to the 12th file in the list.
              :0 move to the top of the list.
              :$ move to the bottom of the list.

       :[count]command
              The   only  builtin  :[count]command  are  :[count]d[elete]  and
              :[count]y[ank].

       :d3    would delete three files starting at the current  file  position
              moving down.

       :3d    would delete one file at the third line in the list.

       :command [args]

       :[range]!program
              will execute the program in a shell

       :[range]!command &

       will run the process in the background using vifm's means.

       Programs  that  write  to  stdout  like ls will create an error message
       showing partial output of the command.

       Take note of the space before ampersand symbol, if you omit it, command
       will be run in the background using job control of your shell.

       Accepts macros.

       :[range]!! <program>
              is  the same as :! but will pause the screen before returning to
              Vifm.

       :!!    will execute the last command.

       :[range]alink[!?]
              creates absolute symbolic links of files in directory  of  other
              view.   With  "?"   vifm  will  open  vi to edit filenames.  "!"
              forces overwrite.

       :[range]alink[!] path
              creates absolute symbolic links of files in directory  specified
              with the path (absolute or relative to directory of other view).
              "!" forces overwrite.

       :[range]alink[!] name1 name2...
              creates absolute symbolic links of files in directory  of  other
              view  giving  each next link a corresponding name from the argu‐
              ment list.  "!" forces overwrite.

       :apropos manpage
              will create a menu of items returned  by  the  apropos  command.
              Selecting  an  item in the menu will open the corresponding man‐
              page.

       :apropos
              repeats last :apropos command.

       :cd or :cd ~ or :cd $HOME
              change to your home directory.

       :cd -  go to previous directory.

       :cd ~/dir
              change directory to ~/dir.

       :cd /curr/dir /other/dir
              change directory of the current pane to /curr/dir and  directory
              of the other pane to /other/dir.  When using relative paths vifm
              assumes that both of them are relative to current  directory  of
              current  view.   Command  will not fail if one of directories is
              invalid.  Accepts macros.

       :cd! /dir
              same as :cd /dir /dir.

       :c[hange]
              create a menu window to alter a files properties.

       :[range]chmod
              shows file attributes (permission on *nix and properties on Win‐
              dows) change dialog.

       :[range]chmod[!] arg...
              only for *nix
              changes  permissions for files.  See 'man chmod' for arg format.
              "!" means set permissions recursively.

       :[range]chown
              only for *nix
              same as co key in normal mode.

       :[range]chown [user][:][group]
              only for *nix
              changes owner and/or group of files.   Operates  on  directories
              recursively.

       :[range]clone[!?]
              clones  files  in current directory.  With "?" vifm will open vi
              to edit filenames.  "!" forces overwrite.  Macros are expanded.

       :[range]clone[!] path
              clones files to directory specified with the path  (absolute  or
              relative  to  current directory).  "!" forces overwrite.  Macros
              are expanded.

       :[range]clone[!] name1 name2...
              clones files in current directory giving each next clone a  cor‐
              responding  name  from the argument list.  "!" forces overwrite.
              Macros are expanded.

       :colo[rscheme]?
              prints current color scheme name in the status bar.

       :colo[rscheme]
              gives a menu with a list of available color  schemes.   You  can
              choose  default  color scheme here.  It will be used for view if
              no DIRECTORY in colorscheme file fits current path.   It's  also
              used  to set border color (except view titles) and colors in the
              menus and dialogs.

       :colo[rscheme] color_scheme_name
              changes default color scheme to color_scheme_name.

       :colo[rscheme] color_scheme_name directory
              associates directory with the color scheme.  The directory argu‐
              ment  can  be  both  absolute or relative path when :colorscheme
              command is executed from command line, but mandatory  should  be
              an  absolute path when the command is executed in scripts loaded
              at startup (until vifm is completely loaded).

       :comc[lear]
              removes all user defined commands.

       :com[mand]
              gives a menu of user commands.

       :com[mand] beginning
              shows user defined commands that start with the beginning.

       :com[mand] name action
              sets a new user command.
              Trying to use a reserved command name will result  in  an  error
              message.
              Use :com[mand]! to overwrite a previously set command.
              Unlike  vim  user  commands  do not have to start with a capital
              letter.  User commands are run in a shell by default.  To run  a
              command  in  the background you must set it as a background com‐
              mand with & at the end of the commands action (:com rm rm %f &).
              Command  name  cannot contain numbers or special symbols (except
              '?' and '!').

       :com[mand] backup /pattern
              will set search pattern.

       :com[mand] name filter pattern
              will set file name filter.

       :com[mand] cmd :commands
              will set kind of alias for internal command (like in  a  shell).
              Will pass range given to alias to an aliased command, so running
              :%cp after
                :command cp :copy %a
              equals
                :%copy

       :[range]co[py][!?][ &]
              copies files to directory of other view.   With  "?"  vifm  will
              open vi to edit filenames.  "!" forces overwrite.

       :[range]co[py][!] path[ &]
              copies  files  to directory specified with the path (absolute or
              relative to directory of other view).  "!" forces overwrite.

       :[range]co[py][!] name1 name2...[ &]
              copies files to directory of other view giving each next file  a
              corresponding  name  from  the  argument list.  "!" forces over‐
              write.

       :[range]d[elete][!][ &]
              delete selected file or  files.   "!"  means  completely  remove
              file.

       :[range]d[elete][!] [reg] [count][ &]
              will  delete  files  to  the reg register.  "!" means completely
              remove file.

       :delc[ommand] command_name
              will remove the command_name user command.

       :delm[arks]!
              will delete all marks.

       :delm[arks] marks ...
              will delete specified marks, each argument is treated as  a  set
              of marks.

       :di[splay]
              popup menu with registers content.

       :di[splay] list ...
              display  the  contents  of the numbered and named registers that
              are mentioned in list (for example "az to display "", "a and  "z
              content).

       :dirs  display directory stack.

       :ec[ho] [<expr>...]
              evaluates  each argument as an expression and outputs them sepa‐
              rated by a space.  See help on :let command for a definition  of
              <expr>.

       :[range]e[dit] [file...]
              will load the selected or passed file or files into vi.  Accepts
              macros.

       :el[se]
              executes commands until next matching :endif if they  previously
              were  not  being executed.  See also help on :if and :endif com‐
              mands.

       :empty will permanently remove 'rm -fr' files from trash directory.  It
              will also remove all operations from undolist that have no sense
              after :empty and remove all records about files in trash  direc‐
              tory from all registers.  See "Trash directory" section below.

       :en[dif]
              ends  conditional  block.   See  also help on :if and :else com‐
              mands.

       :exe[cute] [<expr>...]
              evaluates each argument as an expression and joins results sepa‐
              rated  by a space to get a single string, which is then executed
              as a command-line command.  See help on :let command for a defi‐
              nition of <expr>.

       :exi[t][!]
              same as :quit.

       :f[ile]
              popup  menu  of  programs  set  for the file type of the current
              file. Add ' &' at the end of command to  run  program  in  back‐
              ground.

       :f[ile] arg
              run  associated command that begins with the arg without opening
              menu.

       :filet[ype] pat1,pat2,... [{descr}]def_prog[ &],[{descr}]prog2[ &],...
              will associate given program  list  to  each  of  the  patterns.
              Associated  program (command) is used by handlers of l and Enter
              keys (and also in the :file menu).  *, ?, [ and ] are treated as
              special  symbols  in the pattern.  Inside square brackets ^ or !
              can be used for symbol class negotiation and the - symbol to set
              a  range.   Asterisk at the pattern beginning don't match dot in
              the first position.  If you need to insert  comma  into  command
              just  double  it  (",,").  Space followed by an ampersand as two
              last characters of a command means running of the command in the
              background.   Optional  description can be given to each command
              to ease understanding of what command will do in the :file menu.
              Vifm  will  try the rest of the programs for an association when
              the default isn't found.  On Windows path  to  executables  con‐
              taining  spaces  can  (and  should be for correct work with such
              paths) be double quoted.  See also "Automatic FUSE mounts"  sec‐
              tion below.

       :filex[type] pat1,pat2,... [{ description }] def_program,program2,...
              same as :filetype, but vifm will ignore this command if it's not
              running in X.  In X :filextype is equal to :filetype.  See  also
              "Automatic FUSE mounts" section below.

       :filev[iewer] pat1,pat2,... command
              will  associate  given  command  as a viewer to each of the pat‐
              terns.  Viewer is a command which output is captured and  showed
              in  the  second  pane of vifm after running :view command.  Cur‐
              rently only * and ? are treated as special symbols in  the  pat‐
              tern.

       :filter regular_expression_pattern
              :filter  /regular_expression_pattern/  will filter all the files
              out of the directory listing that match the regular  expression.
              Using second variant you can use | symbol without escaping.  Add
              ´!' to invert filter.
              :filter /.o$ would filter  all  files  ending  in  .o  from  the
              filelist.
              Note: vifm uses extended regular expressions.

       :filter
              would filter no files from the filelist.

       :filter!
              same as :invert.

       :filter?
              show current filter value.

       :[range]fin[d] pattern
              will  show  results of find command in the menu.  Searches among
              selected files if any.  Accepts macros.

       :[range]fin[d] -opt...
              same as :find  above,  but  user  defines  all  find  arguments.
              Searches among selected files if any.

       :[range]fin[d] path -opt...
              same  as  :find  above,  but  user  defines  all find arguments.
              Ignores selection and range.

       :[range]fin[d]
              repeats last :find command.

       :fini[sh]
              Stop sourcing a script. Can only be used in a vifm script  file.
              This is a quick way to skip the rest of the file.

       :[range]gr[ep][!] pattern
              will  show  results  of  grep  command  in the menu.  Add "!" to
              search lines that do not match pattern.  Searches among selected
              files if any and no range given.  Ignores binary files.

       :[range]gr[ep][!] -opt...
              same  as :grep above, but user defines all find arguments, which
              are not escaped.  Searches among selected files if any.

       :[range]gr[ep][!]
              repeats last :grep command.  "!" of this command inverts "!"  in
              repeated command.

       :h[elp]
              show the help file.

       :h[elp] argument
              is the same as using ':h argument' in vim.  Use vifm-<something>
              to get help on vifm (tab completion works).  This  form  of  the
              command doesn't work when ´vimhelp' option is off.

       :hi[ghlight]
              will  show information about all highlight groups in the current
              directory.

       :hi[ghlight] group-name
              will show information on given highlight group  of  the  default
              color scheme.

       :hi[ghlight] group-name cterm=style | ctermfg=color | ctermbg=color
              sets  style  (cterm),  foreground  (ctermfg)  or/and  background
              (ctermbg) parameters of highlight groups of the current  default
              color scheme.

       Available style values (some of them can be combined):
        - bold
        - underline
        - reverse or inverse
        - standout
        - none

       Available group-name values:
        - Win - color of all windows (views, dialogs, menus)
        - Border - color of vertical parts of the border
        - TopLineSel - top line color of the current pane
        - TopLine - top line color of the other pane
        - CmdLine - the command line/status bar color
        - ErrorMsg - color of error messages in the status bar
        - StatusLine - color of the line above the status bar
        - WildMenu - color of the wild menu items
        - CurrLine - line at cursor position in the view
        - Selected - color of selected files
        - Directory - color of directories
        - Link - color of symbolic links in the views
        - BrokenLink - color of broken symbolic links
        - Socket - color of sockets
        - Device - color of block and character devices
        - Executable - color of executable files
        - Fifo - color of fifo pipes

       Available colors:
        - -1 or default or none - default or transparent
        - black
        - red
        - green
        - yellow
        - blue
        - magenta
        - cyan
        - white

       Light  versions  of  colors are regular colors with bold attribute set.
       So order of arguments of :highlight command is important and it's  bet‐
       ter  to  put  "cterm" in front of others to prevent it from overwriting
       attributes set by "ctermfg" or "ctermbg" arguments.

       Since there are two colors and only one bold attribute it affects  both
       colors  when  "reverse" attribute is used when running vifm in terminal
       emulator.  While linux native console can handle boldness of foreground
       and background colors independently, which is for consistency with ter‐
       minal emulators accessible from vifm only  implicitly  by  using  light
       versions of colors.

       Here  is  the hierarchy of highlight groups, which you need to know for
       using transparency:
         StatusLine
           WildMenu
         Border
         CmdLine
           ErrorMsg
         Win
           Directory
           Link
           BrokenLink
           Socket
           Device
           Fifo
           Executable
             Selected
               CurrLine
         TopLine
           TopLineSel

       "none" means default terminal color for highlight groups at  the  first
       level of the hierarchy and transparency for all others.

       :his[tory]
              creates a popup menu of directories visited.

       :his[tory] x
              x can be:
              d[ir]     or . show directory history.
              i[nput]   or @ show prompt history (e.g. on one file renaming).
              s[earch]  or / show search history and search forward on l key.
              f[search] or / show search history and search forward on l key.
              b[search] or ? show search history and search backward on l key.
              c[md]     or : show command line history.

       :if {expr1}
              starts  conditional  block.   Commands  are  executed until next
              matching :else of :endif command if {expr1}  evaluates  to  non-
              zero,  otherwise  they  are ignored.  See also help on :else and
              :endif commands.

       :invert
              invert file name filter.

       :invert?
              show current filter state.

       :jobs  shows menu of current backgrounded processes.

       :let $ENV_VAR = <expr>
              sets environment variable.  Warning: setting  environment  vari‐
              able to an empty string on Windows removes it.

       :let $ENV_VAR .= <expr>
              append value to environment variable.

       Where  <expr> could be a single-quoted string, double-quoted string, an
       environment variable, function call or a concatanation of any  of  them
       in any order using the '.' operator.  Any whitespace is ignored.

       :locate filename
              uses  the locate command to create a menu of filenames Selecting
              a file from the menu will reload the current file list  in  vifm
              to show the selected file.

       :locate
              repeats last :locate command.

       :[range]ma[rk][?] x [/full/path] [filename]
              Set  mark  x (a-zA-Z0-9) at /full/path and filename.  By default
              current directory is being used.  If no filename was  given  and
              /full/path  is  current  directory  then last file in [range] is
              used.  Using of macros is allowed.  Question mark will stop com‐
              mand from overwriting existing marks.

       :marks create a popup menu of bookmarks.

       :marks list ...
              display the contents of the marks that are mentioned in list.

       :mes[sages]
              shows previously given messages (up to 50).

       :mkdir[!] dir ...
              creates  directories  with  given  names.  "!" means make parent
              directories as needed.  Macros are expanded.

       :[range]m[ove][!?][ &]
              moves files to directory of other view.  With "?" vifm will open
              vi to edit filenames.  "!" forces overwrite.

       :[range]m[ove][!] path[ &]
              moves  files  to  directory specified with the path (absolute or
              relative to directory of other view).  "!" forces overwrite.

       :[range]m[ove][!] name1 name2...[ &]
              moves files to directory of other view giving each next  file  a
              corresponding  name  from  the  argument list.  "!" forces over‐
              write.

       :noh[lsearch]
              clear selection in current pane.

       :norm[al][!] commands
              executes normal mode commands.  If "!" is  used,  mappings  will
              not  be  used.   If  the  last  command is unfinished it will be
              aborted as if <esc> or <c-c> was typed.  A ":"  should  be  com‐
              pleted  as  well.   commands  can't start with a space, so put a
              count of 1 (one) before it.

       :on[ly]
              changes the window to show only the current file directory.

       :popd  remove pane directories from stack.

       :pushd[!] /curr/dir [/other/dir]
              add pane directories to stack and  process  arguments  like  :cd
              command.

       :pushd exchanges the top two items of the directory stack.

       :pw[d] show the present working directory.

       :q[uit][!]
              will exit vifm (add ! if you don't want to save changes or check
              if there are any of backgrounded commands still running).

       :[range]y[ank] [reg] [count]
              will yank files to the reg register.

       :ls    shows list of screen program windows (only when screen is used).

       :reg[isters]
              popup menu with registers content.

       :reg[isters] list ...
              display the contents of the numbered and  named  registers  that
              are  mentioned in list (for example "az to display "", "a and "z
              content).

       :[range]rename[!]
              rename files using vi to edit  names.  !  means  go  recursively
              through directories.

       :[range]rename name1 name2...
              rename each of selected files to a corresponding name.

       :restart
              will  free  a  lot of things (histories, commands, etc.), reread
              vifminfo and vifmrc files and run startup commands passed in the
              argument list, thus losing all unsaved changes (e.g. recent his‐
              tory or keys mapped in current session).

       :[range]restore
              will restore file from trash  directory,  doesn't  work  in  any
              other directory.  See "Trash directory" section below.

       :[range]rlink[!?]
              creates  relative  symbolic links of files in directory of other
              view.  With "?"  vifm will  open  vi  to  edit  filenames.   "!"
              forces overwrite.

       :[range]rlink[!] path
              creates  relative symbolic links of files in directory specified
              with the path (absolute or relative to directory of other view).
              "!" forces overwrite.

       :[range]rlink[!] name1 name2...
              creates  relative  symbolic links of files in directory of other
              view giving each next link a corresponding name from  the  argu‐
              ment list.  "!" forces overwrite.

       :screen
              toggles whether or not to use the screen program.
              The default configuration has the screen option turned off.  The
              screen program uses pseudo terminals to allow  multiple  windows
              to  be  used in the console or in a single xterm.  Starting vifm
              from screen with the screen option turned on will cause vifm  to
              open  a  new  screen  window for each new file edited or program
              launched from vifm.
              This requires screen version 3.9.9 or newer for  the  screen  -X
              argument.

       :screen?
              shows whether screen program is used.

       :se[t] shows all options that differ from their default value.

       :se[t] all
              shows all options.

       :se[t] opt1=val1 opt2='val2' opt3="val3" ...
              will set options to given values.
              You can use following syntax:
               - for all options - option, option? and option&
               - for boolean options - nooption, invoption and option!
               - for integer options - option=x, option+=x and option-=x
               - for string options - option=x
               - for string list options - option=x, option+=x and option-=x
               - for enumeration options - option=x, option+=x and option-=x
               - for enumeration options - option=x
               - for set options - option=x, option+=x and option-=x
               - for charset options - option=x, option+=x and option-=x

              the meaning:
               - option - turn option on (for boolean) or print its value (for
              all others)
               - nooption - turn option off
               - invoption - invert option state
               - option! - invert option state
               - option? - print option value
               - option& - reset option to its default value
               - option=x or option:x - set option to x
               - option+=x - add x to option
               - option-=x - remove (or subtract) x from option

              Option name can be prepended  and  appended  by  any  number  of
              whitespace characters.

       :sh[ell]
              will start a shell.

       :sor[t]
              creates  a popup menu of different sorting methods, when one can
              select primary sorting key.  When 'viewcolumns' options is empty
              and  'lsview'  is  off,  changing  primary sorting key will also
              affect view look (in particular the second column  of  the  view
              will be changed).

       :so[urce] file
              reads command-line commands from the file.

       :sp[lit]
              switch to a two window horizontal view.

       :sp[lit]!
              toggles window horizontal splitting.

       :sp[lit] path
              splits  the  window  horizontally to show both file directories.
              And changes other pane to path (absolute or relative to  current
              directory of active pane).

       :[range]s[ubstitite]/pattern/string/[flags]
              for each file in range replace a match of pattern with string.

       String  can  contain \0...\9 to link to capture groups (\0 - all match,
       \1 - first group, etc.).

       Available flags:

       - i - ignore case (the 'ignorecase' and  'smartcase'  options  are  not
         used)

       - I  -  don't ignore case (the 'ignorecase' and 'smartcase' options are
         not used)

       - g - substitute all matches in each file name (each g toggles this)

       :[range]s[ubstitute]//string/[flags]
         will use previous pattern.

       :[range]s[ubstitute]
         will repeat previous substitution command.

       :sync [relative path]
         change the other panel to the current panel directory or to some path
         relative to the current directory.  Using macros is allowed.

       :sync!
         change the other panel to the current panel directory and synchronize
         cursor position.

       :touch file...
         will create files.  Aborts on errors and won't update time of  exist‐
         ing files.  Macros are expanded.

       :[range]tr/pattern/string/
         for  each  file in range transliterate the characters which appear in
         pattern to the corresponding character in  string.   When  string  is
         shorter than pattern, it's padded with its last character.

       String  can contain  ...9 to link to capture groups (0 - all match, 1 -
       first group, etc.).

       :undol[ist]
              show list of latest changes.  Add ! to see commands.

       :unl[et][!] $ENV_VAR1 $ENV_VAR2 ...
              remove environment variables. Add ! to omit displaying of  warn‐
              ings about nonexistent variables.

       :ve[rsion]
              show menu with version information.

       :vifm  same as :version.

       :vie[w]
              toggle on and off the quick file view.

       :vie[w]!
              turns on quick file view if it's off.

       :volumes
              only for MS-Windows
              will popup menu with volume list.  Hitting l (or Enter) key will
              open appropriate volume in the current pane.

       :vs[plit]
              switch to a two window vertical view.

       :vs[plit]!
              toggles window vertical splitting.

       :vs[plit] path
              splits the window vertically to show both file directories.  And
              changes  other  pane  to  path  (absolute or relative to current
              directory of active pane).

       :windo [command...]
              Execute command for each pane (same as :winrun % command).

       :winrun type [command...]
              Execute command for pane(s), which is determined by  type  argu‐
              ment:
               - ^ - top-left pane
               - $ - bottom-right pane
               - % - all panes
               - . - current pane
               - , - other pane

       :w[rite]
              write  vifminfo  file  (add  !  to  force write even if settings
              weren't changed).

       :wq[!] same as :quit, but ! only disables check  of  backgrounded  com‐
              mands.

       :x[it][!]
              will exit Vifm (add ! if you don't want to save changes).


       :map lhs rhs
              map lhs key sequence to rhs in normal and visual modes.

       :map! lhs rhs
              map lhs key sequence to rhs in command line mode.


       :cm[ap] lhs rhs
              map lhs to rhs in command line mode.

       :mm[ap] lhs rhs
              map lhs to rhs in menu mode.

       :nm[ap] lhs rhs
              map lhs to rhs in normal mode.

       :qm[ap] lhs rhs
              map lhs to rhs in view mode.

       :vm[ap] lhs rhs
              map lhs to rhs in visual mode.


       :cm[ap]
              lists all maps in command line mode.

       :mm[ap]
              lists all maps in menu mode.

       :nm[ap]
              lists all maps in normal mode.

       :qm[ap]
              lists all maps in view mode.

       :vm[ap]
              lists all maps in visual mode.


       :cm[ap] beginning
              lists  all  maps in command line mode that start with the begin‐
              ning.

       :mm[ap] beginning
              lists all maps in menu mode that start with the beginning.

       :nm[ap] beginning
              lists all maps in normal mode that start with the beginning.

       :qm[ap] beginning
              lists all maps in view mode that start with the beginning.

       :vm[ap] beginning
              lists all maps in visual mode that start with the beginning.


       :no[remap] lhs rhs
              map the key sequence lhs to {rhs} for normal and  visual  modes,
              but disallow mapping of rhs.

       :no[remap]! lhs rhs
              map  the  key  sequence  lhs to {rhs} for command line mode, but
              disallow mapping of rhs.


       :cno[remap] lhs rhs
              map the key sequence lhs to {rhs} for  command  line  mode,  but
              disallow mapping of rhs.

       :mn[oremap] lhs rhs
              map  the  key  sequence lhs to {rhs} for menu mode, but disallow
              mapping of rhs.

       :nn[oremap] lhs rhs
              map the key sequence lhs to {rhs} for normal mode, but  disallow
              mapping of rhs.

       :qn[oremap] lhs rhs
              map  the  key  sequence lhs to {rhs} for view mode, but disallow
              mapping of rhs.

       :vn[oremap] lhs rhs
              map the key sequence lhs to {rhs} for visual mode, but  disallow
              mapping of rhs.


       :unm[ap] lhs
              remove the mapping of lhs from normal and visual modes.

       :unm[ap]! lhs
              remove the mapping of lhs from command line mode.


       :cu[nmap] lhs
              remove the mapping of lhs from command line mode.

       :mu[nmap] lhs
              remove the mapping of lhs from menu mode.

       :nun[map] lhs
              remove the mapping of lhs from normal mode.

       :qun[map] lhs
              remove the mapping of lhs from view mode.

       :vu[nmap] lhs
              remove the mapping of lhs from visual mode.

Ranges
       The ranges implemented include:
         2,3 - from second to third file in the list (including it)
         % - the entire directory.
         . - the current position in the filelist.
         $ - the end of the filelist.
         't - the mark position t.

       Examples:

         :%delete

       would delete all files in the directory.

         :2,4delete

       would delete the files in the list positions 2 through 4.

         :.,$delete

       would  delete  the  files  from  the current position to the end of the
       filelist.

         :3delete4

       would delete the files in the list positions 3, 4, 5, 6.

       If a backward range is given :4,2delete - an query message is given and
       user can chose what to do next.

       The builtin commands that accept a range are :d[elete] and :y[ank].

Command macros
       The command macros may be used in user commands.

       %a     User  arguments.   When  user arguments contain macros, they are
              expanded before preforming substitution of %a.

       %c %"c The current file under the cursor.

       %C %"C The current file under the cursor in the other directory.

       %f %"f All of the selected files.

       %F %"F All of the selected files in the other directory list.

       %b %"b Same as %f %F.

       %d %"d Full path to current directory.

       %D %"d Full path to other file list directory.

       %rx %"rx
              Full paths to files in the register {x}.   In  case  of  invalid
              symbol in place of {x}, it's processed with the rest of the line
              and default register is used.

       %m     Show command output in a menu.

       %M     Same as %m, but l (or Enter) key is handled like for :locate and
              :find commands.

       %S     Show command output in the status bar.

       %s     Execute  command  in  screen  split  (ignored  if not running in
              screen).

       %i     Completely ignore command output.

       Use %% if you need to put a percent sign in your command.

       Note that %m, %M, %s, %S and %i macros are mutually exclusive. Only the
       last one of them in the command will take effect.

       You  can  use  filename  modifiers  after %c, %C, %f, %F, %b, %d and %D
       macros.  Supported modifiers are:

       - :p           - full path

       - :u             -   UNC   name   of   path   (e.g.    "\\server"    in
         "\\server\share"),  Windows  only.   Expands to current computer name
         for not UNC paths.

       - :~           - relative to the home directory

       - :.           - relative to current directory

       - :h           - head of the filename

       - :t           - tail of the filename

       - :r           - root of the filename (without last extension)

       - :e           - extension of the filename (last one)

       - :s?pat?sub?  - substitute the first occurrence of pat with sub.   You
         can use any character for '?', but it must not occur in pat or sub.

       - :gs?pat?sub?  -  like :s, but substitutes all occurrences of pat with
         sub.

         See ':h filename-modifiers' in Vim's documentation for  the  detailed
         description.

         Using  %x  means  expand  corresponding macro escaping all characters
         that have special meaning.  And %"x means using of double quotes  and
         escape only backslash and double quote characters, which is more use‐
         ful on Windows systems.

         Position and quantity (if there is any) of %m, %M, %S or %s macros in
         the  command  is  unimportant.  All their occurrences will be removed
         from the resulting command.

         %c and %f macros are expanded to file names only, when %C and %F  are
         expanded to full paths.  %f and %F follow this in %b too.

       :com move mv %f %D
         would  set the :move command to move all of the files selected in the
         current directory to the other directory.

       The %a macro will substitute any arguments given in a command into  the
       command.  All arguments are considered optional.  ":com lsl !!ls -l %a"
       will set the lsl command to execute ls -l with or without an argument.

       :lsl<Return>
         will list the directory contents of the current directory.

       :lsl filename<Return>
         will list only the given filename.

       The macros can also be used in directly executing  commands.  ":!mv  %f
       %D" would move the current directory selected files to the other direc‐
       tory.

       Appending & to the end of a command will cause it to be executed in the
       background.Typically  you want to run two kinds of external commands in
       thebackground:
          - GUI applications that doesn't fork thus block vifm (:!sxiv %f &);
          - console tools that do not work with terminal (:!mv %f %D &).

       You don't want to run terminal commands, which require  terminal  input
       oroutput something because they will mess up vifm's TUI. Anyway, if you
       did runsuch a command, you can use Ctrl-L key to update vifm's TUI.

       Rewriting the example command with macros given above with  background‐
       ing:

          :!mv %f %D &

       Note that %m, %M, %s, %S and %i macros have bigger priority than &.  So
       command containing at least one of them can't be backgrounded and "  &"
       at the end will be just silently ignored.

Command backgrounding
       Copy  and move operation can take a lot of time to proceed.  That's why
       vifm supports backgrounding of this  two  operations.   To  run  :copy,
       :move  or :delete command in the background just add " &" at the end of
       a command.

       For each background operation a new thread will be created.   Currently
       job cannot be stopped or paused.

       You  can  see  if  command  is  still running in the :jobs menu.  Back‐
       grounded commands have progress instead  of  process  id  at  the  line
       beginning.

       Background operations cannot be undone.

:set options
       Local options
              These  are kind of options that are local to a specific view. So
              you can set ascending sorting order for left pane and descending
              order for right pane.

       autochpos
              type: boolean
              default: true
              When disabled vifm will set cursor to the first line in the view
              after :cd and :pushd commands instead of saved cursor  position.
              Disabling  this will also make vifm clear information about cur‐
              sor position in the view history on :cd and :pushd commands (and
              on  startup  if  autochpos is disabled in the vifmrc).  l key in
              the :history . menu is treated like :cd  command.   This  option
              affects bookmarks, file position will not preserved.

       columns co
              type: int
              default: terminal width on startup
              Terminal width in characters.

       classify
              type: string list
              default: ":dir:/"
              Specifies  file  name  prefixes  and  suffixes depending on file
              types.  The format is: [{prefix}]:{filetype}:[{suffix}].  Either
              {prefix}  or  {suffix}  or both of them can be omitted (which is
              the default for all unspecified file types),  this  means  empty
              {prefix}  and/or {suffix}.  {prefix} and {suffix} should consist
              exactly of one character.  Elements  are  separated  by  commas.
              Neither  prefixes  nor  suffixes are part of file names, so they
              don't affect commands which operate on file names  in  any  way.
              Comma  (',')  character  should  not be used.  List of file type
              names can be found in the description of filetype() function.

       confirm cf
              type: boolean
              default: true
              Ask about permanent deletion of files (on D or :delete!  command
              or on undo/redo operation).

       cpoptions cpo
              type: charset
              default: "st"
              Contains  a  sequence  of  single-character  flags.   Each  flag
              enables behaviour of older versions of vifm.  Flags:
              s - when included, yy, dd and DD normal  mode  commands  act  on
              selection, otherwise they operate on current file only;
              t  -  when  included,  <tab>  (thus <c-i>) behave as <space> and
              switch active pane, otherwise <tab> and <c-i> go forward in  the
              view history.

       dotdirs
              type: set
              default: nonrootparent
              Controls  displaying  of  dot directories.  The following values
              are possible:
               - rootparent    - show "../" in root directory of file system
               - nonrootparent - show "../" in non-root  directories  of  file
              system
              Note  that  empty  directories  will  always contain "../" entry
              regardless of value of this option.  "../" will disappear at the
              moment at least one file is created inside the directory.

       fastrun
              type: boolean
              default: false
              With  this  option  turned on you can run partially entered com‐
              mands with unambiguous beginning using :! (e.g. :!Te instead  of
              :!Terminal or :!Te<tab>).

       followlinks
              type: boolean
              default: true
              Follow links on l or Enter.

       fusehome
              type: string
              default: "($TMPDIR | $TEMP | $TEMPDIR | $TMP)/vifm_FUSE/"
              Directory  to  be  used  as  a root dir for FUSE mounts.  If you
              change this option, vifm won't  remount  anything.   It  affects
              future  mounts  only.  See "Automatic FUSE mounts" section below
              for more information.

       gdefault gd
              type: boolean
              default: false
              When on, 'g' flag is on for :substitute by default.

       history hi
              type: integer
              default: 15
              Maximum number of directories in the view history and  lines  in
              the prompt, command line and search histories.

       hlsearch hls
              type: bool
              default: true
              Highlight all matches of search pattern.

       iec    type: boolean
              default: false
              Use KiB, MiB, ... instead of KB, MB, ...

       ignorecase ic
              type: boolean
              default: false
              Ignore  case  in search patterns (:substitute, / and ? commands)
              and characters after f and F commands.  It doesn't  affect  file
              filtering.

       incsearch is
              type: boolean
              default: false
              When  this option is set, search will be performed starting from
              initial cursor position each time search pattern is changed.

       laststatus ls
              type: boolean
              default: true
              Controls if status bar is visible.

       lines  type: int
              default: terminal height on startup
              Terminal height in lines.

       lsview type: boolean
              default: false
              type: local
              When this option is set, directory view  will  be  displayed  in
              multiple  columns  with  filenames  similar to output of `ls -x`
              command.  See ls-like view section below for format description.

       rulerformat ruf
              type: string
              default: "%=%l-%S "
              Determines the content of the ruler.  Its width is 13 characters
              and it's right aligned.  Following macros are supported:
               %l - file number
               %L - total number of files in view (including filtered)
               %- - number of filtered files
               %S - number of showed files
               %= - separation point between left and right align items
               %% - percent sign

              Percent  sign  can  be followed by optional minimum field width.
              Add '-' before minimum field width if you want field to be right
              aligned.  Example:

               set rulerformat="%=%2l-%S [%L] "

       runexec
              type: boolean
              default: false
              Run executable file on Enter or l.

       scrollbind scb
              type: boolean
              default: false
              When  this  option  is  set, vifm will try to keep difference of
              scrolling positions of two windows constant.

       scrolloff so
              type: int
              default: 0
              Minimal number of screen lines to keep above and below the  cur‐
              sor.   If you want cursor line to always be in the middle of the
              view (except at the beginning or end of the file list), set this
              option to some large value (e.g. 999).

       shell sh
              type: string
              default: $SHELL or "sh" or "cmd" (on MS-Windows)
              Full path to the shell to use to run external commands.

       shortmess shm
              type: charset
              default: ""
              Contains  a  sequence  of  single-character  flags.   Each  flag
              enables shortening of some message displayed by vifm in the TUI.
              Flags:
              T  -  truncate status-bar messages in the middle if they are too
              long to fit on the command line.  "..." will appear in the  mid‐
              dle.

       slowfs type: string list
              default: ""
              only for *nix
              A  list of mounter fs name beginnings (first column in /etc/mtab
              or /proc/mounts) that work too slow for you.  This option can be
              used  to stop vifm from making some requests to particular kinds
              of file systems that can slow  down  file  browsing.   Currently
              this means don't check if directory has changed and do not check
              if target of symbolic links exists.

       smartcase scs
              type: boolean
              default: false
              Overrides the ignorecase option if the search  pattern  contains
              at  least  one  upper case character.  Only used when ignorecase
              option is enabled.  It doesn't affect file filtering.

       sort   type: string list
              default: +name on *nix and +iname on Windows
              type: local
              Sets list of sorting keys (first item is primary key, second  is
              secondary key, etc.):
                 [+-]ext   - sort by extension
                 [+-]name  - sort by name (including extension)
                 [+-]iname - sort by name (including extension, ignores case)
                 [+-]gid   - sort by group id (*nix only)
                 [+-]gname - sort by group name (*nix only)
                 [+-]mode  - sort by mode (*nix only)
                 [+-]perms - sort by permissions string (*nix only)
                 [+-]uid   - sort by owner id (*nix only)
                 [+-]uname - sort by owner name (*nix only)
                 [+-]size  - sort by size
                 [+-]atime - sort by time accessed
                 [+-]ctime - sort by time changed
                 [+-]mtime - sort by time modified

       ´+' means ascending sort for this key, and '-' means descending sort.

       In case name (iname on Windoes) is skipped, it will be added at the end
       automatically.

       This option also changes view columns according to primary sorting  key
       set, unless 'viewcolumns' option is not empty.

       sortnumbers
              type: boolean
              default: false
              type: local
              Natural sort of (version) numbers within text.

       statusline stl
              type: string
              default: ""
              Determines  the content of the status line (the line right above
              command-line).  Empty string means use same format like in  pre‐
              vious versions.  Following macros are supported:

              - %t - file name

              -  %A  -  file  attributes (permissions on *nix or properties on
                     Windows)

              - %u - user name or uid (if it cannot be resolved)

              - %g - group name or gid (if it cannot be resolved)

              - %s - file size in human readable format

              - %E - size of selected files in human readable format, same  as
                     %s  when no files are selected, except that it will never
                     show size of ../ in  visual  mode,  since  it  cannot  be
                     selected

              - %d - file modification date (uses 'timefmt' option)

              - all 'rulerformat' macros

              Percent  sign  can  be followed by optional minimum field width.
              Add '-' before minimum field width if you want field to be right
              aligned.  Example:

               set statusline="  %t%= %A %10u:%-7g %15s %20d "

              On  Windows file properties include next flags (upper case means
              flag is on):
               A - archive
               H - hidden
               I - content isn't indexed
               R - readonly
               S - system
               C - compressed
               D - directory
               E - encrypted
               P - reparse point (e.g. symbolic link)
               Z - sparse file

              sortorder
                     type: enumeration
                     default: ascending
                     Sets sort order for primary key: ascending, descending.

              tabstop ts
                     type: integer
                     default: value from curses library
                     Number of spaces that a Tab in the file counts for.

              timefmt
                     type: string
                     default: " %m/%d %H:%M"
                     Format of time in file list.  See man date or  man  strf‐
                     time for details.

              timeoutlen tm
                     type: integer
                     default: 1000
                     The  time in milliseconds that is waited for a mapped key
                     in case of already typed key sequence is ambiguous.

              trash  type: boolean
                     default: true
                     Use  trash  directory.   See  "Trash  directory"  section
                     below.

              trashdir
                     type: string
                     default: "$HOME/.vifm/Trash"
                     Sets path to trash directory.  Will attempt to create the
                     directory if it does not exist.   See  "Trash  directory"
                     section below.

              undolevels ul
                     type: integer
                     default: 100
                     Maximum number of changes that can be undone.

              vicmd  type: string
                     default: "vim"
                     The  actual  command used to start vi.  Ampersand sign at
                     the end (regardless whether it's  preceded  by  space  or
                     not) means backgrounding of command.

              viewcolumns
                     type: string
                     default: ""
                     type: local
                     Format  string  containing  list  of columns in the view.
                     When this option is empty view columns to show are chosen
                     automatically  using sorting keys (see 'sort') as a base.
                     Value of this option is ignored if 'lsview' is set.   See
                     Column view section below for format description.

              vixcmd type: string
                     default: value of vicmd
                     The  command  used to start vi when in X.  Ampersand sign
                     at the end (regardless whether it's preceded by space  or
                     not) means backgrounding of command.

              vifminfo
                     type: set
                     default: bookmarks

              Controls what will be saved in the $VIFM/vifminfo file.
                 options   - all options that can be set with the :set command
                 filetypes - associated programs and viewers
                 commands  - user defined commands (see :command description)
                 bookmarks - bookmarks, except special ones like '< and '>
                 tui        -  state of the user interface (sorting, number of
              windows, quick
                             view state, active view)
                 dhistory  - directory history
                 state     - file name and  dot  filters  and  screen  program
              using state
                 cs        - default color scheme
                 savedirs  - save last visited directory (needs dhistory)
                 chistory  - command line history
                 shistory  - search history (/ and ? commands)
                 dirstack  - directory stack
                 registers - registers content
                 phistory  - prompt history

              vimhelp
                     type: boolean
                     default: false
                     Use vim help format.

              wildmenu wmnu
                     type: boolean
                     default: false
                     Controls  whether  possible matches of completion will be
                     shown above the command line.

              wrap   type: boolean
                     default: true
                     Controls whether to wrap text in quick view.

              wrapscan ws
                     type: boolean
                     default: true
                     Searches wrap around end of the list.

Mappings
       Since it's not easy to enter special characters there are several  spe‐
       cial sequences that can be used in place of them.  They are:

       <cr>   Enter key

       <bs>   Backspace key

       <tab> <s-tab>
              Tabulation and Shift+Tabulation keys

       <esc>  <space>  <home> <end> <left> <right> <up> <down> <pageup> <page‐
       down>
              Keys with obvious names.

       <del> <delete>
              Delete key.   <del>  and  <delete>  mean  different  codes,  but
              <delete> is more common.

       <c-a>,<c-b>,...,<c-z>,<c-[>,<c->,<c-]>,<c-^>,<c-_>
              Control + some key.

       <a-a>,<a-b>,...,<a-z>
              <m-a>,<m-b>,...,<m-z> Alt + some key.

       <a-c-a>,<a-c-b>,...,<a-c-z>
              <m-c-a>,<m-c-b>,...,<m-c-z> only for *nix
              Alt + Ctrl + some key.

       <f0> - <f63>
              Functional keys

       <c-f1> - <c-f12>
              only for MS-Windows
              Functional keys with Control key pressed.

       <a-f1> - <a-f12>
              only for MS-Windows
              Functional keys with Alt key pressed.

       <s-f1> - <s-f12>
              only for MS-Windows
              Functional keys with Shift key pressed.

       vifm  removes  whitespace  characters  at the beginning and end of com‐
       mands.  That's why you may want to use <space> at the  end  of  rhs  in
       mappings.  For example:

        cmap <f1> man<space>

       will  put  "man " in line when you hit the <f1> key in the command line
       mode.

Expression syntax
       Supported expressions is a subset of what VimL provides.

       Expression syntax summary, from least to most significant:

       vifm-expr1 expr2 == expr2          equal
                  expr2 != expr2          not equal

       vifm-expr2 expr3 . expr3 ..        string concatenation

       vifm-expr3 "string"                string constant, \ is special
                  'string'                string constant, ' is doubled
                  $VAR                    environment variable
                  function(expr1, ...)    function call

       ".." indicates that the operations in this level can be concatenated.

       expr1
       -----
       expr2 {cmp} expr2

       Compare two expr2 expressions, resulting in a  0  if  it  evaluates  to
       false or 1 if it evaluates to true.

       equal     ==
       notequal  !=

       Examples:
        'a' == 'a'    evaluates to 1
        'a' == 'b'    evaluates to 0

       expr2
       -----
       expr3 . expr3 ..     string concatenation

       Examples:
        'a' . 'b' = 'ab'
        'aaa' . '' . 'c' = 'aaac'

       expr3
       -----

       string
       ------
       "string"             string constant

       Note that double quotes are used.

       A string constant accepts these special characters:
       \b      backspace <bs>
       \e      escape <esc>
       \n      newline
       \r      return <cr>
       \t      tab <tab>
       \\      backslash
       \"      double quote

       Examples:
        "\"Hello,\tWorld!\""
        "Hi,\nthere!"

       literal-string
       --------------
       ´string'             string constant

       Note that single quotes are used.

       This  string  is  taken as it is.  No backslashes are removed or have a
       special meaning.  The only exception is that two quotes stand  for  one
       quote.

       Examples:
        'All\slashes\are\saved.'
        'This string contains doubled single quotes ''here'''

       environment variable
       --------------------
       $VAR                  environment variable

       The  String value of any environment variable.  When it is not defined,
       the result is an empty string.

       Examples:
        'This is my $PATH env: ' . $PATH
        'vifmrc at ' . $MYVIFMRC . ' is used.'

       function call
       -------------
       function(expr1, ...)  function call

       See Functions section below.

       Examples:
        "'" . filetype('.') . "'"
        filetype('.') == 'reg'

Functions
       USAGE             RESULT        DESCRIPTION

       expand({expr})     String         Expand  macros  in   {expr}.    file‐
       type({fnum})  String        Returns file type from position.

       expand({expr})
       Expands macros in {expr} just like it's done for command-line commands.
       Returns a string.  See "Command macros" section above.  Examples:
         " percent sign
         :echo expand('%%')
         " the last part of directory name of the other pane
         :echo expand('%D:t')

       filetype({fnum})
       The result is a string, which represents file type and is  one  of  the
       list:
           exe    executables
           reg    regular files
           link   symbolic links
           dir    directories
           char   character devices
           block  block devices
           fifo   pipes
           sock   *nix domain sockets
           ?      unknown file type (should never appear)
       Parameter {fnum} can have following values:
           - '.' to get type of file under the cursor in the active pane

Menus and dialogs
       General

       j, k - move.
       <Escape>, Ctrl-C, ZZ, ZQ - quit.
       <Return>, l - select and exit the menu.
       Ctrl-L - redraw the menu.

       Escape, Ctrl-C, ZZ, ZQ, q - quit.

       In all menus

       Ctrl-B/Ctrl-F
       Ctrl-D/Ctrl-U
       Ctrl-E/Ctrl-Y
       / and ?, n/N
       [num]G/[num]gg
       H/M/L
       zb/zt/zz
       zh - scroll menu items [count] characters to the right.
       zl - scroll menu items [count] characters to the left.
       zH - scroll menu items half of screen width characters to the right.
       zL - scroll menu items half of screen width characters to the left.

       All  these  keys  have the same meaning as in normal mode (but not L in
       filetype menu).

       : - enter command line mode for menus (currently only :exi[t], :q[uit],
       :x[it] and :range are supported).

       Apropos menu

       l  key won't close the menu allowing user to pick another man page, use
       :q to close the menu.

       Commands menu

       dd on a command to remove.

       Bookmarks menu

       Escape or Ctrl-C to abort j and k to move through.
       dd on a bookmark to remove.

       Directory stack menu

       Pressing l or Enter on  directory  name  will  rotate  stack  to  place
       selected directory pair at the top of the stack.

       Filetype menu

       Commands from vifmrc or typed in command-line are displayed above empty
       line.  All commands below empty line are from .desktop files.

       Fileinfo dialog

       Enter - close dialog
       q - close dialog

       Sort dialog

       h - switch ascending/descending.
       Space - switch ascending/descending.
       q - close dialog

       Attributes (permissions or properties) dialog

       h - check/uncheck.
       Space - check/uncheck.
       q - close dialog

       Item states:

       - * - checked flag.

       - X - means that it has different value for files in selection.

       - d (*nix only) - (only for execute flags) means u-x+X, g-x+X or  o-x+X
         argument  for the chmod program.  If you want to remove execute right
         from all files, but preserve it  for  directories,  set  all  execute
         flags to 'd' and check ´Set Recursively' flag.

Startup
       On  startup  vifm determines several variables that are used during the
       session.  They are determined in the order they appear below.

       On *nix systems $HOME is normally present and used as is.   On  Windows
       systems  vifm  tries  to  find  correct home directory in the following
       order:
        - $HOME variable;
        - $USERPROFILE variable;
        - a combination of $HOMEDRIVE and $HOMEPATH variables.

       vifm tries to find correct configuration directory by checking the fol‐
       lowing places:
        - $VIFM variable;
        - parent directory of the executable file (on Windows only);
        - $HOME/.vifm directory;
        - $APPDATA/Vifm directory (on Windows only).

       vifm tries to find correct configuration file by checking the following
       places:
        - $MYVIFMRC variable;
        - vifmrc in parent directory of the executable file (on Windows only);
        - $VIFM/vifmrc file.

Configure
       See Startup section above for the explanations on $VIFM and $MYVIFMRC.

       The vifmrc file  contains  commands  that  will  be  executed  on  vifm
       startup.   See $MYVIFMRC variable description for search algorithm used
       to find vifmrc.  Use it to set settings, mappings, filetypes  etc.   To
       use multi line commands precede each next line with a slash (whitespace
       before slash is ignored, but all spaces at the end  of  the  lines  are
       saved).  For example:
         set
             \smartcase
       equals "setsmartcase".  When
         set<space here>
             \ smartcase
       equals "set  smartcase".

       The  $VIFM/vifminfo file contains session settings.  You may edit it by
       hand to change the settings, but it's not recommended to do that,  edit
       vifmrc  instead.   You  can  control  what  settings  will  be saved in
       vifminfo by setting ´vifminfo' option.  Vifm always writes this file on
       exit unless 'vifminfo' option is empty.  Bookmarks, commands, directory
       history, filetypes, fileviewers and registers in the  file  are  merged
       with vifm configuration (which has bigger priority).

       The  $VIFM/scripts  directory can contain shell scripts.  vifm modifies
       it's PATH environment variable to let user run  those  scripts  without
       specifying  full path.  All subdirectories of the $VIFM/scripts will be
       added to PATH too.  Script in a subdirectory overlaps script  with  the
       same name in all its parent directories.

       The $VIFM/colors directory contains color schemes.

Automatic FUSE mounts
       vifm has a builtin support of automated FUSE file system mounts.  It is
       implemented using file associations  mechanism.   To  enable  automated
       mounts,  one needs to use a specially formated program line in filetype
       or filextype commands.  Currently two formats are supported:

       1) FUSE_MOUNT This format should be used in case when  all  information
       needed  for  mounting all files of a particular type is the same.  E.g.
       mounting of tar files don't require any file specific options.

       Format line:
         FUSE_MOUNT|mounter %SOURCE_FILE %DESTINATION_DIR [%CLEAR]

       Example filetype command:
         :filetype FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR

       2) FUSE_MOUNT2 This format allows one to use specially formatted  files
       to  perform  mounting  and  is useful for mounting remotes, for example
       remote file systems over ftp or ssh.

       Format line:
         FUSE_MOUNT2|mounter %PARAM %DESTINATION_DIR [%CLEAR]

       Example filetype command:
         :filetype FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR

       Example file content:
           root@127.0.0.1:/

       All % macros are expanded by vifm at runtime  and  have  the  following
       meaning:
         - %SOURCE_FILE is replaced by full path to selected file
         - %DESTINATION_DIR is replaced by full path to mount directory, which
       is created by vifm basing on the value of 'fusehome' option.
         - %PARAM value is filled from the first line of  file  (whole  line),
       though in the future it can be changed to whole file content
         -  %CLEAR  means  that  you want to clear screen before running mount
       command.

       %CLEAR is an optional macro.  Other macros are not mandatory, but mount
       commands likely won't work without them.

       The  mounted  FUSE  file systems will be automatically unmounted in two
       cases:

       - when vifm quits (with ZZ, :q, etc. or when killed by signal)

       - when you explicitly leave mount point going up to its  parent  direc‐
         tory  (with  h,  Enter on "../" or ":cd ..") and other pane is not in
         the same directory or its child directories.

View look
       vifm supports displaying of file list view in two different ways:

       - in a table mode, when multiple columns can be set using 'viewcolumns'
         option (see Column view section below for details);

       - in  a multicolumn list manner which looks almost like `ls -x` command
         output (see ls-like view section below for details).

       The look is local for each view and can be chosen by changing value  of
       the ´lsview' boolean option.

       Depending  on view look some of keys change their meaning to allow more
       natural cursor moving.  This concerns mainly h, j, k, l and other simi‐
       lar navigation keys.

       Also  some of options can be ignored if they don't affect view display‐
       ing in selected look.  For example value of 'viewcolumns' when 'lsview'
       is set.

ls-like view
       When this view look is enabled by setting 'lsview' option on, vifm will
       display files in multiple columns.  Number of columns  depends  on  the
       length  of  the  longest  file name present in current directory of the
       view.  Whole file list is automatically reflowed on  directory  change,
       terminal or view resize.

       View looks close to output of `ls -x` command, so files are listed left
       to right in rows.

       In this mode file manipulation commands (e.g. d) don't  work  line-wise
       like  they  do in Vim, since such operations would be uncommon for file
       manipulating tasks.  Thus, for example, dd  will  remove  only  current
       file.

Column view
       View columns are described by a comma-separated list of column descrip‐
       tions, each of which has the following format
           [ '-' ] [ fw ( [ '.' tw ] | '%' ) ] '{' type '}' '.'{0,3}
       where fw stands for full width and tw stands for text width.

       So it basically consists of four parts:
        1. Optional alignment specifier
        2. Optional width specifier
        3. Mandatory column name
        4. Optional cropping specifier

       Alignment specifier

       It's an optional minus sign as the first symbol of the string.

       Specifies type of text alignment within a column.  Two types  are  sup‐
       ported:

       - left align
              set viewcolumns=-{name}

       - right align (default)
              set viewcolumns={name}

       Width specifier

       It's  a  number  followed  by  a  percent sign, two numbers (second one
       should be less than or equal to the first one) separated with a dot  or
       a single number.

       Specifies column width and its units. There are tree size types:

       - absolute size - column width is specified in characters
              set viewcolumns=-100{name},20.15{ext}
         results  in  two  columns  with  lengths of 100 and 20 and a reserved
         space of five characters on the left of second column.

       - relative (percent) size - column width is specified  in  percents  of
         view width
              set viewcolumns=-80%{name},15%{ext},5%{mtime}
         results  in three columns with lengths of 80/100, 15/100 and 5/100 of
         view width.

       - auto size (default) - column width is automatically determined
              set viewcolumns=-{name},{ext},{mtime}
         results in three columns with length of  one  third  of  view  width.
         There  is no size adjustment to content, since it will slow down ren‐
         dering.

       Columns of different sizing types can be  freely  mixed  in  one  view.
       Though  sometimes  some  of columns can be seen partly or be completely
       invisible if there is not enough space to display them.

       Column name

       This is just a sort key surrounded with curly braces, e.g.
           {name},{ext},{mtime}
       {name} and {iname} keys are the same and present both  for  consistency
       with ´sort' option.

       Empty  curly braces ({}) are replaced with the default secondary column
       for primary sort key. So after the next command view will be  displayed
       almost  as if 'viewcolumns' is empty, but adding ellipsis for long file
       names:
           set viewcolumns=-{name}..,6{}.

       Cropping specifier

       It's from one to three dots after closing curly brace in column format.

       Specifies type of text truncation if it doesn't fix in the column. Cur‐
       rently tree types are supported:

       - truncation - text is truncated
              set viewcolumns=-{name}.
         results in truncation of names that are too long too fit in the view.

       - adding  of  ellipsis  -  ellipsis on the left or right are added when
         needed
              set viewcolumns=-{name}..
         results in that ellipsis are added at the end of too long file names.

       - none (default) - text can pass column boundaries
              set viewcolumns=-{name}...,{ext}
         results in that long file names can partially be written on  the  ext
         column.

Color schemes
       The color schemes in vifm can be applied in two different ways:

       - as the default (or main) color scheme

       - as local to a panel color scheme

       Both  types are set using |vifm-:colorscheme| command, but of different
       forms:

       - :colorscheme color_scheme_name - for the default color scheme

       - :colorscheme color_scheme_name directory - for local color schemes

       Look of different parts of the TUI (Text User Interface) is  determined
       in this way:

       - Border,  TopLineSel, TopLine, CmdLine, ErrorMsg, StatusLine and Wild‐
         Menu are always determined by the default color scheme

       - CurrLine, Selected, Directory, Link, BrokenLink, Socket, Device, Exe‐
         cutable,  Fifo  and  Win are determined by default color scheme and a
         set of local colorschemes, which can be empty

       There might be a set of local color schemes because they are structured
       hierarchically  according to file system structure. For example, having
       the following piece of file system:

        ~
        `-- bin
           |
           `-- my

       Two color schemes:

        # ~/.vifm/colors/for_bin
        highlight Win cterm=none ctermfg=white ctermbg=red
        highlight CurrLine cterm=none ctermfg=red ctermbg=black

        # ~/.vifm/colors/for_bin_my
        highlight CurrLine cterm=none ctermfg=green ctermbg=black

       And these three commands in the vifmrc file:

        colorscheme Default
        colorscheme for_bin ~/bin
        colorscheme for_bin_my ~/bin/my

       File list will look in the following way for each level:

       - ~/ - Default color scheme
         black background
         cursor with blue background

       - ~/bin/ - mix of Default and for_bin color schemes
         red background
         cursor with black background and red foreground

       - ~/bin/my/ - mix of Default, for_bin and for_bin_my color schemes
         red background
         cursor with black background and green foreground

Trash directory
       vifm has support of trash directory, which is used as temporary storage
       for deleted files or files that were cut.  Using trash is controlled by
       the ´trash' option, and exact  path  to  the  trash  can  be  set  with
       'trashdir'  option.   Trash  directory in vifm differs from the system-
       wide one by default, because of possible incompatibilities  of  storing
       deleted   files  among  different  file  managers.   But  one  can  set
       'trashdir' to "~/.local/share/Trash" to use a "standard"  trash  direc‐
       tory.

       There are two scenarios of using trash in vifm:

       1.  As  a  place  for  storing  files  that  were cut by "d" and may be
           inserted to some other place in file system.

       2.  As a storage of files, that are deleted but not purged yet.

       The first scenario uses deletion ("d") operations to put files to trash
       and  put  ("p") operations to restore files from trash directory.  Note
       that such operations move files to and from trash directory, which  can
       be  long  term  operations  in  case  of different partitions or remote
       drives mounted locally.

       The second scenario uses deletion ("d") operations for moving files  to
       trash directory and :empty command-line command to purge all previously
       deleted files.

       Deletion and put operations depend on registers,  which  can  point  to
       files  in trash directory.  Normally, there are no nonexistent files in
       registers, but vifm doesn't keep track  of  modifications  under  trash
       directory,  so one shouldn't expect value of registers to be absolutely
       correct if trash directory was modified not by operation that are meant
       for  it.  But this won't lead to any issues with operations, since they
       ignore nonexistent files.

Client-Server
       vifm supports remote execution of command-line mode commands as well as
       remote  changing  of directories.  This is possible using --remote com‐
       mand-line argument.

       To execute a command remotely combine --remote argument with  -c  <com‐
       mand> or +<command>.  For example:
           vifm --remote -c 'cd /'
           vifm --remote '+cd /'

       To  change directory not using command-line mode commands one can spec‐
       ify paths right after --remote argument, like this:
           vifm --remote /
           vifm --remote ~
           vifm --remote /usr/bin /tmp

       At the moment there is no way of specifying,  which  instance  of  vifm
       should  arguments be sent.  The main purpose of --remote argument is to
       provide support of using vifm as a single-instance application.

Plugin
       Plugin for using vifm in vim as a file selector.

       Commands:

         :EditVifm   select a file or files to open in the current buffer.
         :SplitVifm  split buffer and select a file or files to open.
         :VsplitVifm vertically split buffer and select a  file  or  files  to
       open.
         :DiffVifm    select  a  file  or files to compare to the current file
       with
                     :vert diffsplit.
         :TabVifm    select a file or files to open in tabs.

       Each command accepts up to two arguments: left pane directory and right
       pane  directory.   After arguments are checked, vifm process is spawned
       in a special "file-picker" mode.  To pick files just open  them  either
       by  pressing  l,  i  or Enter keys, or by running :edit command.  If no
       files are selected, file under the cursor is  opened,  otherwise  whole
       selection is passed to the plugin and opened in vim.

       The  plugin  have  only  two  settings.   It's  a string variable named
       g:vifm_term to let user  specify  command  to  run  gui  terminal.   By
       default  it's  equal  to ´xterm -e'.  And another string variable named
       g:vifm_exec, which equals "vifm"  by  default  and  specifies  path  to
       vifm's  executable.   To  pass  arguments to vifm use g:vifm_exec_args,
       which is empty by default.

       To use the plugin copy the vifm.vim file  to  either  the  system  wide
       vim/plugin directory or into ~/.vim/plugin.

       If  you would prefer not to use the plugin and it is in the system wide
       plugin directory add

       let loaded_vifm=1

       to your ~/.vimrc file.

Reserved
       The following command names are reserved and shouldn't be used for user
       commands.

         g[lobal]
         v[global]

SEE ALSO
       Website: http://vifm.sourceforge.net/

AUTHOR
       Vifm was written by ksteen <ksteen@users.sourceforge.net>
       And currently is developed by xaizek <xaizek@lavabit.com>



                                 May 06, 2013                          vifm(1)
vim:ft=man
